<html>
	<head>
		<meta charset="utf-8"></meta>
		<title>BOpenGL</title>
		<link href="./style.css" rel="stylesheet" type="text/css"/>
	</head>
	<body>
		<div class="class" name="BOpenGL">
			<h1>BOpenGL</h1>
			<p id="resume"/>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right">static void </td><td><a href="#Init()">Init</a>();</td></tr>
				<tr><td align="right">static bool </td><td><a href="#Check()">Check</a>();</td></tr>
				<tr><td align="right">static void </td><td><a href="#Release()">Release</a>();</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glVertex(const BReal&, const BReal&, const BReal&)">glVertex</a>(const BReal& x, const BReal& y, const BReal& z);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glNormal(const BReal&, const BReal&, const BReal&)">glNormal</a>(const BReal& x, const BReal& y, const BReal& z);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glScale(const BReal&, const BReal&, const BReal&)">glScale</a>(const BReal& x, const BReal& y, const BReal& z);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glColor(BByte, BByte, BByte, BByte)">glColor</a>(BByte r, BByte g, BByte b, BByte a);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glVertexArray(const BVectorArray*)">glVertexArray</a>(const BVectorArray* vertices);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glVertexArray(const BVector*)">glVertexArray</a>(const BVector* vertices);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glNormalArray(const BVectorArray*)">glNormalArray</a>(const BVectorArray* normals);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glLoadMatrix(const BMatrix&)">glLoadMatrix</a>(const BMatrix& matrix);</td></tr>
				<tr><td align="right">static inline void </td><td><a href="#glMultMatrix(const BMatrix&)">glMultMatrix</a>(const BMatrix& matrix);</td></tr>
			</table>
			<div id="desc">
				<h2>详细介绍：</h2><p>BOpenGL是代表opengl开发环境，添加此类头文件后，可以直接使用OpenGL的各个C函数。</p><p>整个框架的绘制和渲染体系都是基于OpenGL进行的。</p><p>二维绘制一使用BPainter在控件的paintEvent()方法中绘制。其视口为整个控件尺寸，因为每个控件都有独立的图层。使用正交变换矩阵，深度为Z轴的[-1, 1]。</p><p>三维则是在BViewer控件中进行的，其中的摄像机（）的底片图层为渲染成像处，摄像机的数据定义了场景渲染的投影变换矩阵。</p>
			</div>
			<h2 id="docs">成员文档：</h2>
			<div id="Init()">
				<h3>static void Init();</h3><p>初始化OpenGL函数列表，主要工作是提取可用的函数。</p>
			</div>
			<div id="Check()">
				<h3>static bool Check();</h3><p>检查执行中的错误情况。</p>
			</div>
			<div id="Release()">
				<h3>static void Release();</h3><p>释放需要销毁的资源句柄，往往不需要的句柄会被暂存在释放列表中，在完成绘制工作后进行集中销毁。</p>
			</div>
			<div id="glVertex(const BReal&, const BReal&, const BReal&)">
				<h3>static inline void glVertex(const BReal&amp; x, const BReal&amp; y, const BReal&amp; z);</h3><p>此方法用于适配实数类型，应用顶点数据。</p>
			</div>
			<div id="glNormal(const BReal&, const BReal&, const BReal&)">
				<h3>static inline void glNormal(const BReal&amp; x, const BReal&amp; y, const BReal&amp; z);</h3><p>此方法用于适配实数类型，应用法线数据。</p>
			</div>
			<div id="glScale(const BReal&, const BReal&, const BReal&)">
				<h3>static inline void glScale(const BReal&amp; x, const BReal&amp; y, const BReal&amp; z);</h3><p>此方法用于适配实数类型，应用缩放数据。</p>
			</div>
			<div id="glColor(BByte, BByte, BByte, BByte)">
				<h3>static inline void glColor(BByte r, BByte g, BByte b, BByte a);</h3><p>此方法用于适配常用颜色数据，各个分量数据类型为一个字节。</p>
			</div>
			<div id="glVertexArray(const BVectorArray*)">
				<h3>static inline void glVertexArray(const BVectorArray* vertices);</h3><p>应用实数类型的顶点数组。</p>
			</div>
			<div id="glVertexArray(const BVector*)">
				<h3>static inline void glVertexArray(const BVector* vertices);</h3><p>应用实数类型的顶点数组。</p>
			</div>
			<div id="glNormalArray(const BVectorArray*)">
				<h3>static inline void glNormalArray(const BVectorArray* normals);</h3><p>应用实数类型的法线数组。</p>
			</div>
			<div id="glLoadMatrix(const BMatrix&)">
				<h3>static inline void glLoadMatrix(const BMatrix&amp; matrix);</h3><p>应用实数类型的变换矩阵。</p>
			</div>
			<div id="glMultMatrix(const BMatrix&)">
				<h3>static inline void glMultMatrix(const BMatrix&amp; matrix);</h3><p>累乘以实数类型的变换矩阵。</p>
			</div>
		</div><p/><p/>
	</body>
</html>